package cn.huiyunche.base.service.interfaces;

import cn.jpush.api.push.PushResult;

import java.util.Collection;

public interface PushService {

    PushResult pushObjectAllAllAlert(String alert);

    PushResult buildPushObjectAllAliasAlert(String alert, String... alias);

    PushResult buildPushObjectAndroidTagAlertWithTitle(String alert, String title, String... tagValue);

    PushResult buildPushObjectAndroidAndIos(String alertContent, String androidTitle, String extraKey, String extraValue, String... tagValue);

    PushResult buildPushObjectIosTagAndAlertWithExtrasAndMessage(String alert, String sound, String extraKey, String extraValue, String msgContent, String... tagValue);

    PushResult buildPushObjectIosAudienceMoreMessageWithExtras(Collection<String> alias, Collection<String> tags, String msgContent);

    PushResult sendPushWithCustomConfig(String hostName, String alert);

    PushResult sendIosAlert(String title, String body, String actionLocKey);

    PushResult sendAndroidAlert(String title, String body, String actionLockey);


    /**
     * 推送消息到kyle
     *
     * @param userid
     * @param msg
     */
    void notifyKyleUser(Long userid, String msg);

}
